-- **********************************************************************
-- EOSN-TC:  McDATA EOSN MIB Textual Conventions (SMIv2).
--
-- REVISION HISTORY
-- Date      PRG  Description
-- ======================================================================
-- Release 1.0
--
-- 06/18/04  xli  Renamed "sanera" to "eosn" 
-- 12/06/03  dhl  Added McDATA compatible TCs
-- 09/21/01  sto  Added BbPartitionNumber and BbPaddlePairID TCs
-- 04/06/01  dhl  Initial version
--
-- Copyright (c) 2003-2004 McDATA Corp.  All rights reserved.
-- Copyright (c) 2002-2003 Sanera Systems, Inc.  All rights reserved.
-- **********************************************************************
--
EOSN-TC DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, Integer32, Unsigned32  FROM SNMPv2-SMI
    TEXTUAL-CONVENTION                      FROM SNMPv2-TC
    eosnModules                             FROM EOSN-REG
    SnmpAdminString                         FROM SNMP-FRAMEWORK-MIB;

eosnTextualConventions MODULE-IDENTITY
    LAST-UPDATED    "0406180307Z"
    ORGANIZATION    "McDATA Corporation"
    CONTACT-INFO
        "       McDATA Corporation

        Postal: 370 San Aleso Ave
                Sunnyvale, CA  94086
                USA
 
           Tel: +1-800-752-4572
        E-mail: support@mcdata.com
           Web: www.mcdata.com

        "
    DESCRIPTION
        "This module defines textual conventions used throughout
         McDATA enterprise MIBs."
    REVISION    "200109260000Z"
    DESCRIPTION
        "Initial version of this MIB TC."
    ::= { eosnModules 3 }

BbEventSeverity ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The severity associated with an event."
    SYNTAX      INTEGER {
                    informational(0),
                    minor(2),
                    major(3),
                    severe(4)
                }

BbPortIndex ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The linear port index identifying each port on this chassis. 
                It equals the port number +1."
    SYNTAX      INTEGER (1..2048)

BbSlotNumber ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The number identifying a physical slot on this chassis.
                It equals the slot number +1."
    SYNTAX      INTEGER (1..14)

BbPaddleNumber ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The number identifying a physical paddle within a module.
                It equals the paddle number +1."
    SYNTAX      INTEGER (1..4)

BbPortNumber ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The number identifying a physical port within a paddle.
                It equals the physical port number +1."
    SYNTAX      INTEGER (1..8)

BbPortType ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The port type."
    SYNTAX      INTEGER {
                    portTypeUnknown(1),
                    port1G-FC(2),
                    port2G-FC(3),
                    port1G2G-FC(4),
                    port10G-FC(5),
                    port1G2G4G-FC(6)
                }

BbPaddleType ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "The paddle type.

        paddleSfp    - SFP (Small Form Factor Pluggable), used for 1G/2G-FC, 
                        1GE, 1xIB.
        paddleXgp    - XGP (WDM-to-XAUI 10-Gigabit Interface Module), used 
                        for 1GE, 10G-FC.
        paddleXenpak - XENPAK (WDM-toXAUI 10G Module), used mainly for 
                        long-haul 10GE, 10G-FC.
        paddleMpo    - MPO ( Multifiber Parallel Optics), used mainly for 
                        McDATA's low-cost, non-standard 10G ISL for 10G-FC, 
                        10GE. MPO is also used for standard 4x-IB and 12X-IB.
        "
    SYNTAX      INTEGER {
                    paddleOther(1),
                    paddleSfp(2),
                    paddleXgp(3),
                    paddleXenpak(4),
                    paddleMpo(5)
                }

BbPaddleState ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The state of a paddle."
    SYNTAX      INTEGER {
                    online(1),
                    offline(2),
                    failed(3)
                }
BbRowStatusWithoutNotInService ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION  
        "This is a modification of the RowStatus standard for 
        creating/deleting table rows that don't need to support 
        the notInService state.  A GET always returns 'active'.

        To create a row, set this object to 'createAndGo'.  
        If 'createAndGo' is used, the row will only be created 
        if the entry didn't already exist.  
             
        To delete a row, set this object to 'destroy'."
    SYNTAX  INTEGER {
                active(1),
                createAndGo(4),
                destroy(6) 
            }

BbPartitionNumber ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The number identifies a valid nDP partition numbers.
                It equals the partition number +1." 
    SYNTAX      Integer32(1..5)

BbPaddlePairID ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The paddle pair identification."
    SYNTAX      INTEGER { 
                    paddles0and1(1),
                    paddles2and3(2) 
                } 

BbZoningSource ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION  
        "The source of where the zoning information is retrieved 
        or stored. Note that only the transactionBuffer can be
        written to by external client request."
    SYNTAX      INTEGER {
                    savedBuffer(1),
                    transactionBuffer(2),
                    effective(3)  --obsolete
                }

BbBeaconingState ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The state for port or board beaconing."
    SYNTAX      INTEGER {
                    on(1),
                    off(2)
                }

BbResettableCounter32 ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Same as Counter32 with the exception that the value may
        be reset to 0 by the system or upon user request. These
        objects may not be resettable individually, but as a
        group via another control object."
    SYNTAX  Unsigned32(0..4294967295)

BbEnabledStatus ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "A status value for the object."
    SYNTAX      INTEGER { 
                    enabled(1), 
                    disabled(2) 
                }

BbDomainId ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The Fibre Channel domain ID of the switch."
    SYNTAX      Integer32 (1..239)

BbSamplingInterval ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The sampling interval, in seconds, for performance monitoring."
    SYNTAX      INTEGER (1..10)

BbPerfPortType ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The type of performance statistics."
    SYNTAX      INTEGER {
                    txRate(1),
                    rxRate(2),
                    errorRate(3),
                    utilization(4)
                }

BbSysOperStatus ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "System operation status."
    SYNTAX      INTEGER {
                    operational       (1),
                    redundant-failure (2),
                    minor-failure     (3),
                    major-failure     (4),
                    not-operational   (5)
                }

BbFruCode ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "FRU code."
    SYNTAX      INTEGER {
                    none(1), 
                    fru-bkplne(2),  -- Backplane
                    fru-ctp(3),     -- Control Processor card
                    fru-swm(4),     -- Switch Module (SWM)
                    fru-fbf(5),     -- Fan Tray-Front Bottom Fan
                    fru-ftf(6),     -- Fan Tray-Front Top Fan
                    fru-rbf(7),     -- Fan Tray-Rear Bottom Fan
                    fru-rtf(8),     -- Fan Tray-Rear Top Fan
                    fru-ps(9),      -- Power supply module
                    fru-ptm(10),    -- Power Transfer Module
                    fru-lim(11),    -- Line Module with paddles (LIM) 
                    fru-otpx(12),   -- 10G optical paddle
                    fru-otps(13),   -- 2G optical paddle
                    fru-gbic(14),   -- GBIC
                    fru-lmq(15),    -- Line Module (LMQ)
                    fru-lmx(16),    -- Line Module (LMX)
                    fru-lmo(17),    -- Line Module (LMO)
                    fru-swx(20),    -- Switch Module (SWX)
                    fru-sfp(23),    -- optics sfp
                    fru-xfp(24)     -- optics xfp                                        
                }

BbFruPosition ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The FRU position for the FRU type."
    SYNTAX      INTEGER (1..256)

BbFcWWN ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "Represents the Worldwide Name associated with
                a Fibre Channel (FC) entity."
    SYNTAX      OCTET STRING (SIZE (8))

BbPortList ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "A list of ports in bitmap format."
    SYNTAX      OCTET STRING (SIZE (32))

BbDateAndTime ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The date and time in ASCII displayable format."
    SYNTAX      SnmpAdminString (SIZE (0..64))

BbSlotType ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The slot type."
    SYNTAX      INTEGER {
                    lim(1),
                    swm(2), 
                    ctp(3)                    
                }
BbObjectInstance ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION 
        "An global instance object, can be used to identify any integer such as 
         a port number (0 -255) or a paddle-pair number (0-15)."
    SYNTAX      INTEGER (0..255)

BbThresholdAlertCounterId ::=TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The counter id used in threshold alert configuration."
    SYNTAX      INTEGER {
                none(1),
                -- counter 2-49 are from FCMGMT connUnitPortStatTable.
                -- the associate oid is 'connUnitPortStat' + the counter id enum label.
                -- for instance, thd oid of 'countError' is 'connUnitPortStatCountError.
                countError (2),
                countTxObjects (3),
                countRxObjects (4),
                countTxElements (5),
                countRxElements (6),
                countBBCreditZero (7),
                countInputBuffersFull (8),
                countFBSYFrames (9),
                countPBSYFrames (10),
                countFRJTFrames (11),
                countPRJTFrames (12),
                countClass1RxFrames (13),
                countClass1TxFrames (14),
                countClass1FBSYFrames (15),
                countClass1PBSYFrames (16),
                countClass1FRJTFrames (17),
                countClass1PRJTFrames (18),
                countClass2RxFrames (19),
                countClass2TxFrames (20),
                countClass2FBSYFrames (21),
                countClass2PBSYFrames (22),
                countClass2FRJTFrames (23),
                countClass2PRJTFrames (24),
                countClass3RxFrames (25),
                countClass3TxFrames (26),
                countClass3Discards (27),
                countRxMulticastObjects (28),
                countTxMulticastObjects (29),
                countRxBroadcastObjects (30),
                countTxBroadcastObjects (31),
                countRxLinkResets (32),
                countTxLinkResets (33),
                countNumberLinkResets (34),
                countRxOfflineSequences (35),
                countTxOfflineSequences (36),
                countNumberOfflineSequences (37),
                countLinkFailures (38),
                countInvalidCRC (39),
                countInvalidTxWords (40),
                countPrimitiveSequenceProtocolErrors (41),
                countLossofSignal (42),
                countLossofSynchronization (43),
                countInvalidOrderedSets (44),
                countFramesTooLong (45),
                countFramesTruncated (46),
                countAddressErrors (47),
                countDelimiterErrors (48),
                countEncodingDisparityErrors (49),

                -- counter 50-53 are from EOSN-MIB bbFcPortStatsTable.
                -- the oid of the associate counter is 'bbFcPortStats' + the enum label.
                -- for instance, the oid of 'txC2Octets' is 'bbFcPortStatsTx2Octets'.
                txC2Octets (50),
                rxC2Octets (51),
                txC3Octets (52),
                rxC3Octets (53),

                -- following ids apply to pre difined counter sets
                physicalLinkErrorsSummedSet(100),
                        -- physicalLinkErrorsSummedSet includes
                        -- Link Failures
                        -- Sync Losses
                        -- Signal Losses
                        -- Primitive Sequence Errors/Protocol Errors
                        -- Invalid Tx Words
                        -- CRC Errors
                        -- Frames Too Short
                        -- Delimiter Errors
                linkSequenceCountsSummedSet(101),
                        -- linkSequenceCountsSummedSet includes
                        -- Link Resets Received
                        -- Link Resets Sent
                        -- OLS Received
                        -- OLS Sent
                        -- LIPS Generated
                        -- LIPS Detected (Teton)
                logicalLinkErrorsSummedSet(102)
                        -- logicalLinkErrorsSummedSet includes:
                        -- Discarded Frames
                        -- Address ID Errors
                        -- Class 2 Busied Frames
                        -- Class 2 Rejected Frames
                        -- Class 3 Discarded Frames
    }

    CounterBasedGauge64 ::= TEXTUAL-CONVENTION 
    STATUS current 
    DESCRIPTION 
        "The CounterBasedGauge64 type represents a non-negative integer, i
        which may increase or decrease, but shall never exceed a maximum value,
        nor fall below a minimum value. The maximum value can not be greater 
        than 2^64-1 (18446744073709551615 decimal), and the minimum value can 
        not be smaller than 0. The value of a CounterBasedGauge64 has its 
        maximum value whenever the information being modeled is greater than 
        or equal to its maximum value, and has its minimum value whenever the 
        information being modeled is smaller than or equal to its minimum value. 
        If the information being modeled subsequently decreases below 
        (increases above) the maximum (minimum) value, the CounterBasedGauge64 
        also decreases (increases). Note that this TC is not strictly supported 
        in SMIv2, because the 'always increasing' and 'counter wrap' semantics 
        associated with the Counter64 base type are not preserved. It is possible 
        that management applications which rely solely upon the (Counter64) ASN.1 
        tag to determine object semantics will mistakenly operate upon objects 
        of this type as they would for Counter64 objects. This textual 
        convention represents a limited and short-term solution, and may be 
        deprecated as a long term solution is defined and deployed to replace 
        it." 
    SYNTAX Counter64 


BbFcAddrType ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The address type."
    SYNTAX      INTEGER {
                    npid(1),
                    wwn(2) 
                }


FcNameIdOrZero ::= TEXTUAL-CONVENTION
    STATUS current
    DESCRIPTION
            "The World Wide Name (WWN) associated with a Fibre Channel
            (FC) entity.  WWNs were initially defined as 64-bits in
            length.  The latest definition (for future use) is 128-bits
            long.  The zero-length string value is used in circumstances
            where the WWN is unassigned/unknown."
    SYNTAX  OCTET STRING (SIZE(0 | 8 | 16))

BbSecurityTriggerLevel ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The indication level associated with the security trigger entry."
    SYNTAX      INTEGER {
                    informational(5),
                    change(10),
                    error(15)
                }

BbSecurityCategory ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The category associated with the security trigger entry."
    SYNTAX      INTEGER {
                    connect(5),
                    disconnect(10),
                    configChange(15),
                    authorization(20),
                    autentication(25),
                    system(30)  
                }

BbVfID ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION "The Virtual Fabric Identifier."
    SYNTAX      Integer32 (1..3839)

END